#ifndef __POINT_H__
#define __POINT_H__

struct Point{
		Point( );
		Point( double, double, double );
		Point( const Point& );
		~Point( );

		Point operator-( const Point& );
		Point operator+( const Point& );
		Point* operator+( const Point* );
		Point operator*( double );
        bool operator==( const Point& );

		double norm( );
		Point normalization( );
		double dotProduct( Point );
		Point crossProduct( Point );

		double area( Point&, Point&);

		void show( );
		double *intoVector();

        void select(bool);
        bool isSelected();

		double x;
		double y;
		double z;
        bool selected;
};

#endif
